[INFO] cloning repository https://github.com/kaikalii/climm
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kaikalii/climm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaikalii%2Fclimm", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaikalii%2Fclimm'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0ff050271f9e0ea9b4ed0407f0e6f7e3b11d56c8
[INFO] checking kaikalii/climm against master#4eb62535fc12dd1a63fd43a4173e224e79313c4d for pr-158816
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaikalii%2Fclimm" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/kaikalii/climm
[INFO] finished tweaking git repo https://github.com/kaikalii/climm
[INFO] tweaked toml for git repo https://github.com/kaikalii/climm written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kaikalii/climm on toolchain 4eb62535fc12dd1a63fd43a4173e224e79313c4d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4eb62535fc12dd1a63fd43a4173e224e79313c4d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kaikalii/climm already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4eb62535fc12dd1a63fd43a4173e224e79313c4d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thiserror v1.0.19
[INFO] [stderr]   Downloaded thiserror-impl v1.0.19
[INFO] [stderr]   Downloaded xmltree v0.10.0
[INFO] [stderr]   Downloaded pathdiff v0.2.0
[INFO] [stderr]   Downloaded fsevent v2.0.1
[INFO] [stderr]   Downloaded chashmap v2.2.2
[INFO] [stderr]   Downloaded fsevent-sys v3.0.0
[INFO] [stderr]   Downloaded structopt-derive v0.4.7
[INFO] [stderr]   Downloaded inotify v0.8.2
[INFO] [stderr]   Downloaded notify v5.0.0-pre.2
[INFO] [stderr]   Downloaded syn v1.0.23
[INFO] [stderr]   Downloaded structopt v0.3.14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090
[INFO] running `Command { std: "docker" "start" "f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090" "/opt/rustwide/cargo-home/bin/cargo" "+4eb62535fc12dd1a63fd43a4173e224e79313c4d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090" "/opt/rustwide/cargo-home/bin/cargo" "+4eb62535fc12dd1a63fd43a4173e224e79313c4d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.70
[INFO] [stderr]    Compiling proc-macro2 v1.0.13
[INFO] [stderr]    Compiling syn v1.0.23
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.2
[INFO] [stderr]    Compiling proc-macro-error v1.0.2
[INFO] [stderr]    Compiling serde v1.0.110
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]    Compiling indexmap v1.3.2
[INFO] [stderr]     Checking owning_ref v0.3.3
[INFO] [stderr]     Checking lazycell v1.2.1
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]     Checking xml-rs v0.8.3
[INFO] [stderr]     Checking anymap v0.12.1
[INFO] [stderr]     Checking open v1.4.0
[INFO] [stderr]     Checking itertools v0.9.0
[INFO] [stderr]     Checking pathdiff v0.2.0
[INFO] [stderr]     Checking xmltree v0.10.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.34
[INFO] [stderr]     Checking inotify-sys v0.1.3
[INFO] [stderr]     Checking filetime v0.2.10
[INFO] [stderr]     Checking dirs-sys v0.3.4
[INFO] [stderr]     Checking inotify v0.8.2
[INFO] [stderr]     Checking clap v2.33.1
[INFO] [stderr]     Checking colored v1.9.3
[INFO] [stderr]     Checking dirs v2.0.2
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]     Checking parking_lot_core v0.2.14
[INFO] [stderr]     Checking parking_lot v0.4.8
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking chashmap v2.2.2
[INFO] [stderr]     Checking notify v5.0.0-pre.2
[INFO] [stderr]     Checking toml v0.5.6
[INFO] [stderr]    Compiling syn-mid v0.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.19
[INFO] [stderr]    Compiling serde_derive v1.0.110
[INFO] [stderr]    Compiling structopt-derive v0.4.7
[INFO] [stderr]     Checking thiserror v1.0.19
[INFO] [stderr]     Checking structopt v0.3.14
[INFO] [stderr]     Checking clim v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/fomod.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Clone, Copy, Deserialize)]
[INFO] [stdout]    |                              ^----------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Deserialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GroupType`
[INFO] [stdout] 22 | pub enum GroupType {
[INFO] [stdout]    |          --------- `GroupType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                 ^--------
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 `Serialize` is not local
[INFO] [stdout]    |                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_GlobalConfig`
[INFO] [stdout] 18 | pub struct GlobalConfig {
[INFO] [stdout]    |            ------------ `GlobalConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:17:44
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^----------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Deserialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GlobalConfig`
[INFO] [stdout] 18 | pub struct GlobalConfig {
[INFO] [stdout]    |            ------------ `GlobalConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:94:33
[INFO] [stdout]    |
[INFO] [stdout] 94 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                 ^--------
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 `Serialize` is not local
[INFO] [stdout]    |                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ManagedMod`
[INFO] [stdout] 95 | #[serde(default)]
[INFO] [stdout] 96 | pub struct ManagedMod {
[INFO] [stdout]    |            ---------- `ManagedMod` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:94:44
[INFO] [stdout]    |
[INFO] [stdout] 94 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^----------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Deserialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ManagedMod`
[INFO] [stdout] 95 | #[serde(default)]
[INFO] [stdout] 96 | pub struct ManagedMod {
[INFO] [stdout]    |            ---------- `ManagedMod` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:123:30
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]     |                              ^--------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `Serialize` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DeploymentMethod`
[INFO] [stdout] 124 | pub enum DeploymentMethod {
[INFO] [stdout]     |          ---------------- `DeploymentMethod` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:123:41
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]     |                                         ^----------
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         `Deserialize` is not local
[INFO] [stdout]     |                                         move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DeploymentMethod`
[INFO] [stdout] 124 | pub enum DeploymentMethod {
[INFO] [stdout]     |          ---------------- `DeploymentMethod` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:135:33
[INFO] [stdout]     |
[INFO] [stdout] 135 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                 ^--------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 `Serialize` is not local
[INFO] [stdout]     |                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 136 | #[serde(default)]
[INFO] [stdout] 137 | pub struct Config {
[INFO] [stdout]     |            ------ `Config` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:135:44
[INFO] [stdout]     |
[INFO] [stdout] 135 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^----------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Deserialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 136 | #[serde(default)]
[INFO] [stdout] 137 | pub struct Config {
[INFO] [stdout]     |            ------ `Config` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/fomod.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Clone, Copy, Deserialize)]
[INFO] [stdout]    |                              ^----------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `Deserialize` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GroupType`
[INFO] [stdout] 22 | pub enum GroupType {
[INFO] [stdout]    |          --------- `GroupType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                 ^--------
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 `Serialize` is not local
[INFO] [stdout]    |                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_GlobalConfig`
[INFO] [stdout] 18 | pub struct GlobalConfig {
[INFO] [stdout]    |            ------------ `GlobalConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:17:44
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^----------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Deserialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GlobalConfig`
[INFO] [stdout] 18 | pub struct GlobalConfig {
[INFO] [stdout]    |            ------------ `GlobalConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:94:33
[INFO] [stdout]    |
[INFO] [stdout] 94 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                 ^--------
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 `Serialize` is not local
[INFO] [stdout]    |                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ManagedMod`
[INFO] [stdout] 95 | #[serde(default)]
[INFO] [stdout] 96 | pub struct ManagedMod {
[INFO] [stdout]    |            ---------- `ManagedMod` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/game.rs:94:44
[INFO] [stdout]    |
[INFO] [stdout] 94 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^----------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Deserialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ManagedMod`
[INFO] [stdout] 95 | #[serde(default)]
[INFO] [stdout] 96 | pub struct ManagedMod {
[INFO] [stdout]    |            ---------- `ManagedMod` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:123:30
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]     |                              ^--------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `Serialize` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DeploymentMethod`
[INFO] [stdout] 124 | pub enum DeploymentMethod {
[INFO] [stdout]     |          ---------------- `DeploymentMethod` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:123:41
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]     |                                         ^----------
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         `Deserialize` is not local
[INFO] [stdout]     |                                         move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DeploymentMethod`
[INFO] [stdout] 124 | pub enum DeploymentMethod {
[INFO] [stdout]     |          ---------------- `DeploymentMethod` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:135:33
[INFO] [stdout]     |
[INFO] [stdout] 135 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                 ^--------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 `Serialize` is not local
[INFO] [stdout]     |                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 136 | #[serde(default)]
[INFO] [stdout] 137 | pub struct Config {
[INFO] [stdout]     |            ------ `Config` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/game.rs:135:44
[INFO] [stdout]     |
[INFO] [stdout] 135 | #[derive(Debug, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^----------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Deserialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 136 | #[serde(default)]
[INFO] [stdout] 137 | pub struct Config {
[INFO] [stdout]     |            ------ `Config` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.30s
[INFO] running `Command { std: "docker" "inspect" "f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090", kill_on_drop: false }`
[INFO] [stdout] f2f5a52d7bfe1b2691b97c41ad3d293d71793ca84ec1dfef740d57cec2d23090
